package com.example.bms.serviceimpl;


import com.example.bms.entity.Admin;
import com.example.bms.mapper.AdminMapper;
import com.example.bms.service.AdminService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;


/**
 * @apiNote 用于实现超级管理员的增删改查
 * @author
 * @email 2837136899@qq.com
 * @since 1.0.0
 */
@Service
@Transactional
public class AdminServiceImpl implements AdminService {

    @Autowired
    private AdminMapper adminMapper;


    /**
     * @apiNote 用于查询所有超级管理员的基本信息
     * @author
     * @email 2837136899@qq.com
     * @return List<Admin>
     * @since 1.0.0
     */
    @Override
    public List<Admin> findAll() {
        return adminMapper.findAll();
    }


    /**
     * @apiNote 根据adminId查询超级管理员信息
     * @author
     * @param adminId 超级管理员Id
     * @email 2837136899@qq.com
     * @return Admin
     * @since 1.0.0
     */
    public Admin findById(Integer adminId) {
        return adminMapper.findById(adminId);
    }


    /**
     * @apiNote 根据adminId删除超级管理员
     * @author
     * @param adminId 超级管理员Id
     * @email 2837136899@qq.com
     * @return int类型，受影响的条数
     * @since 1.0.0
     */
    @Override
    public int deleteById(int adminId) {
        return adminMapper.deleteById(adminId);
    }


    /**
     * @apiNote 根据adminId修改超级管理员的信息
     * @author
     * @param admin 超级管理员的对象实体类
     * @email 2837136899@qq.com
     * @return int类型，受影响的条数
     * @since 1.0.0
     */
    @Override
    public int update(Admin admin) {
        return adminMapper.update(admin);
    }


    /**
     * @apiNote  用于增加一个超级管理员
     * @author
     * @param admin 超级管理员的对象实体类
     * @email 2837136899@qq.com
     * @return 0
     * @since 1.0.0
     */
    @Override
    public int add(Admin admin) {
        return 0;
    }
}
